.TH std::basic_string::clear 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::basic_string::clear \- std::basic_string::clear

.SH Synopsis
   void clear();  (noexcept since C++11)
                  (constexpr since C++20)

   Removes all characters from the string as if by executing erase(begin(), end()).

   All pointers, references, and iterators are invalidated.

.SH Parameters

   \fI(none)\fP

.SH Return value

   \fI(none)\fP

.SH Notes

   Unlike for std::vector::clear, the C++ standard does not explicitly require that
   capacity is unchanged by this function, but existing implementations do not change
   capacity. This means that they do not release the allocated memory (see also
   shrink_to_fit).

.SH Complexity

   Linear in the size of the string, although existing implementations operate in
   constant time.

.SH Example


// Run this code

 #include <cassert>
 #include <string>

 int main()
 {
     std::string s{"Exemplar"};
     std::string::size_type const capacity = s.capacity();

     s.clear();
     assert(s.capacity() == capacity); // <- not guaranteed
     assert(s.empty());
     assert(s.size() == 0);
 }

.SH See also

   erase removes characters
         \fI(public member function)\fP
